Sự chuyển dịch từ các hệ sinh thái bị khóa theo nhà cung cấp sang HIP (Giao diện tính toán đa dạng cho khả năng di động) đánh dấu bước tiến về hướng độc lập với phần cứng. Thay vì viết lại toàn bộ mã nguồn, chúng ta áp dụng một phương pháp từng phần—một quá trình chuyển đổi có hệ thống, ưu tiên kiểm tra liên tục để tránh bẫy 'Big Bang', nơi việc gỡ lỗi trở nên bất khả thi.
1. Bộ công cụ
HIP cung cấp API thời gian chạy C++ và ngôn ngữ kernel cho cả AMD và NVIDIA. Hipify (thông qua perl hoặc clang) hoạt động như một cầu nối, thực hiện việc chuyển đổi cơ học từ mã nguồn CUDA sang HIP C++ có thể di chuyển.
2. Quy trình 6 bước
3. Thực tế so với tự động
Mặc dù HIP giúp việc chuyển đổi trở nên khả thi, nhưng nó không phải là tự động về hiệu suất. Tính tương đương chức năng (mã chạy được) là mốc đầu tiên; sự cân bằng hiệu suất (mã đã được tối ưu cho mục tiêu) là mục tiêu cuối cùng.